import requests from "./request"; // 引入封装的 axios 实例

// 文件上传接口
export const uploadFile = (file) => {
  // 检查是否传入文件对象
  if (!file) {
    console.error("文件不存在:", file);
    return Promise.reject(new Error("文件不存在"));
  }

  // 创建 FormData
  const formData = new FormData();
  formData.append("Image", file); // el-upload 会传递文件对象，直接添加即可

  // 发起上传请求
  return requests<{}, any>({
    url: "/common/upload",
    method: "post",
    data: formData,
    headers: {
      "Content-Type": "multipart/form-data",
    },
  })
    .then((response) => {
      if (response.code === 0) {
        console.log("上传成功:", response.result);
        return response.result; // 返回文件的 URL
      } else {
        console.error("上传失败:", response);
        return Promise.reject(new Error(response.message || "上传失败"));
      }
    })
    .catch((error) => {
      console.error("上传出错:", error);
      return Promise.reject(error);
    });
};
